﻿using BCDto.Sim.Admin.Admin;
using BCDto.TMS.MoveHouseConfig.MoveHouseSpecificationServiceConfigOverWrite;

namespace BCService.TMS.MoveHouseConfig.MoveHouseSpecificationServiceConfig
{
    public interface IMoveHouseSpecificationServiceConfigOverWriteService
    {
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="moveHouseSpecificationServiceConfigOverWriteId">重写id</param>
        /// <param name="admin"></param>
        bool DeleteAsync(long moveHouseSpecificationServiceConfigOverWriteId, AdminDto admin);
        /// <summary>
        /// 获取id
        /// </summary>
        /// <param name="moveHouseSpecificationServiceConfigOverWriteId">重写id</param>
        /// <returns></returns>
        MoveHouseSpecificationServiceConfigOverWriteDto GetById(long moveHouseSpecificationServiceConfigOverWriteId);
        /// <summary>
        /// 修改价格
        /// </summary>
        /// <param name="moveHouseSpecificationServiceConfigOverWriteId">重写id</param>
        /// <param name="price">价格</param>
        /// <param name="admin">管理员</param>
        /// <returns></returns>
        bool AgentPrice(long moveHouseSpecificationServiceConfigOverWriteId, decimal price, AdminDto admin);
        /// <summary>
        /// 开启
        /// </summary>
        /// <param name="moveHouseSpecificationServiceConfigOverWriteId">重写id</param>
        /// <param name="admin">管理员</param>
        bool Enabled(long moveHouseSpecificationServiceConfigOverWriteId, AdminDto admin);
        /// <summary>
        /// 禁用
        /// </summary>
        /// <param name="moveHouseSpecificationServiceConfigOverWriteId">重写id</param>
        /// <param name="admin">管理员</param>
        bool Disabled(long moveHouseSpecificationServiceConfigOverWriteId, AdminDto admin);
    }
}